A communication network typically includes equipment from various vendors sending data and information among the equipment in the network. To promote interoperability among vendor equipment, an open systems interconnection (OSI) reference model is a widely accepted structure to provide a standard architecture for such interoperability. Models similar to an OSI reference model may include a physical layer at the lowest structure layer followed by a data link layer. Above the data link layer, the model may include higher order layers such as a network layer, a transport layer, a session layer, a presentation layer, and an application layer. The layers may also include sub-layers.
The physical layer deals with the transmission of bit streams over a physical medium. It also deals with the mechanical, electrical, functional, and procedural characteristics to access the physical medium. The data link layer deals with the reliable transfer of information across the physical layer. It also sends blocks or frames for synchronization, error control, and flow control. The data link layer may include a medium access control (MAC) layer and a logical link control layer (LLC). Functions of the MAC layer, or sub-layer, may include assembling data into a frame with address and error-detection fields for transmission, disassembling frames and performing address identification and error detection on reception, and controlling access to the physical layer. The LLC layer may include functions such as interfacing to higher layers and performing flow and error control.
In addition to dealing with the interfacing of various vendor equipment, communication networks, for example computer networks, must deal with errors during data transmission in the communication channels of the network. A communication channel, whether it is a fiber optic channel, a co-axial channel, a wire channel, a wireless channel, or a bus connecting locations in a system over which large amounts of data are transferred, can add noise and errors to information being transmitted over the channel. Various techniques may be used to deal with errors in data transmission, such as correcting the errors on decoding or requesting retransmission of the information. In high speed data communication what is needed is a reliable scheme that provides information with as few errors as possible, but at the same time can be implemented without a significant amount of complexity.